#include "cpu/exec/template-start.h"

#define instr setne

static void do_execute () {
    // 根据 ZF 标志设置目标操作数的值
    DATA_TYPE result = cpu.eflags.ZF ? 0 : 1;
    // printf("ZF = %d\n", cpu.eflags.ZF);
    // printf("result = %d\n", result);
    // DATA_TYPE result = !cpu.eflags.ZF;
    OPERAND_W(op_dest, result);

    // 更新目标操作数的标志位
    update_eflags_pf_zf_sf((DATA_TYPE_S)result);
    cpu.eflags.CF = cpu.eflags.OF = 0;

    print_asm_template1();
    // printf("setne AL register value: 0x%02x\n", REG(R_AL));
}

make_instr_helper(rm)

#include "cpu/exec/template-end.h"
